\documentclass[tikz,border=2mm]{standalone}
\usepackage{array,amsmath,mathptmx,xcolor,bbding,pifont,colortbl}
\usepackage[UTF8]{ctex}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
% 只需要这个就可以
\usepackage[thicklines]{cancel}
% 可以设置线条颜色，默认是黑色
\usepackage{xcolor}
\usepackage{tikz-cd}
\usepackage{tikz,graphicx,subfig,caption} % Required for drawing custom shapes
\usetikzlibrary{fit,matrix,chains,arrows,shapes,positioning,arrows.meta,chains,shadows,shapes.callouts,decorations.text,shapes.symbols,shapes.misc, positioning,decorations.pathreplacing,calc,backgrounds,}

% 额外添加
\usepackage{indentfirst}
\usepackage{diagbox}
\usepackage{amssymb}
\usepackage{pifont}

\begin{document} 
	\begin{tikzpicture}[>=latex,every node/.style={anchor=south west,,inner sep=0,fill=white}]
		
		\node(enter)[draw, anchor=north,align=left,fill=white,inner sep=0.3em] at (0,0){\ \ 入口\ \ }; 
		\draw[-] ([xshift=-1.2em,yshift=0em]enter.north) -- ([xshift=-1.2em,yshift=0em]enter.south);
		
		\node(T1)[draw, anchor=north,align=left,fill=white,inner sep=0.3em] at ([xshift=0em,yshift=-1.2em]enter.south){\quad \  T \  \quad };
		\draw[-] ([xshift=-1.2em,yshift=0em]T1.north) -- ([xshift=-1.2em,yshift=0em]T1.south);
		\draw[-] ([xshift=1.2em,yshift=0em]T1.north) -- ([xshift=1.2em,yshift=0em]T1.south);
		
		\node(select)[draw, diamond,aspect=2, anchor=north,align=left,fill=white,inner sep=0.3em] at ([xshift=0em,yshift=-1.2em]T1.south){ $\omega_0?$ }; 
		
		\node(read2)[anchor=north,align=left,fill=white,inner sep=0.3em] at ([xshift=0em,yshift=-1.2em]select.south){read(w)}; 
		
		\node(T2)[draw, anchor=north,align=left,fill=white,inner sep=0.3em] at ([xshift=0em,yshift=-1.2em]read2.south){\quad \  T \  \quad };
		\draw[-] ([xshift=-1.2em,yshift=0em]T2.north) -- ([xshift=-1.2em,yshift=0em]T2.south);
		\draw[-] ([xshift=1.2em,yshift=0em]T2.north) -- ([xshift=1.2em,yshift=0em]T2.south);
		
		\node(end)[draw, anchor=west,align=left,fill=white,inner sep=0.3em] at ([xshift=2em,yshift=0em]select.east){\ \ 出口\ \ }; 
		\draw[-] ([xshift=-1.2em,yshift=0em]end.north) -- ([xshift=-1.2em,yshift=0em]end.south);
		
		\draw[->] (enter.south) -- (T1.north);
		\draw[->] (T1.south) -- (select.north);
		\draw[->] (select.south) -- (read2.north);
		\draw[->] (select.south) -- (read2.north);
		\draw[->] (read2.south) -- (T2.north);
		\draw[->] (select.east) -- (end.west);
		\draw[-] (T2.south) |- ([xshift=-3em,yshift=-1em]T2.south);
		\draw[-] ([xshift=-3em,yshift=-1em]T2.south) -| ([xshift=-4em,yshift=0em]T2.west);
		\draw[->] ([xshift=-4em,yshift=0em]T2.west) |- ([xshift=0em,yshift=-0.5em]T1.south);
		
		\node(n)[anchor=north,align=left,fill=white,inner sep=0em] at 
		([xshift=1em,yshift=0.6em]select.east){n}; 
		\node(y)[anchor=north,align=left,fill=white,inner sep=0em] at 
		([xshift=0.6em,yshift=-0.3em]select.south){y}; 
		
	\end{tikzpicture}
\end{document}
